# -*- coding: utf-8 -*-
"""
author:码同学 极光
date:2024/9/28
desc: 
sample: 
"""
#左开右闭
name='testfan'
print(name[2:5]) #s。。a
#集合前面 2个 data_list[0]
data_list = ['极光', 'zhangsan', '李四', 'mtx', '王五']
print(data_list[0:3])

#负下标 最后 -1
print(name[-2])
#结合切片
print('切片结合负下标',name[-2:-5:-1])  #降序 a。。s aft
#切片有一个默认步长 1 正数 切片关系要求升序 从小到大
print(name[2:5:1])
#步长 负数 规定切片 前后关系 降序 从大到小
print('切片结合负下标---',name[-5:-2]) #s..a stf

print('切片结合负下标test---',name[-5:-2:-1])


#当缺省时，默认起始或者结尾
print(name[:5])  #testf
print(name[5:])  #默认结尾时候不参与闭合
print(name[:-2]) #t..a
print(name[-2:])

name = "testfan"
print(name[::-1])

print(name[-1])  #n
print(name[:-1]) #testfa

for item in range(1,11): # [1....10]
    print(item)

print('循环打印分割 ----') #步长为负数 大到小
for item in range(10,0,-1): # [10....1]
    print(item)

#排序问题
name = "testfan"
name_list = list(name)
print(type(name_list))
name_list2 = list(reversed(name_list))
print(name_list2)
name_str = ''.join(name_list2)
print(name_str)

print('--------------------------')
#排序  6...0 降序
str_new=''
for item in range(len(name)-1,-1,-1):
    print(name[item])
    str_new+=name[item]

print(str_new)

print("切片集合支持-------------")
#list set tuple 切片
list_test =['1',2,'3','3']
set_test={'1','2','3','3'}
tuple_test=('1',2,3)
print("list_test 切片集合支持-------------")
print(list_test[0:2])
print(list_test[1])
# print(set_test[1])
# print(set_test[0:2])
# print("set_test 切片集合支持-------------")
# print(set_test[0,2])
print("tuple_test 切片集合支持-------------")
print(tuple_test[0:2])